package com.example.mybatisplus.service;

import com.example.mybatisplus.model.domain.Violations;
import com.baomidou.mybatisplus.extension.service.IService;
import com.example.mybatisplus.model.dto.VioDetailDto;
import com.example.mybatisplus.model.dto.VioNumberDTO;
import org.springframework.transaction.annotation.Transactional;
import org.springframework.web.multipart.MultipartFile;

import javax.servlet.http.HttpServletResponse;
import java.time.LocalDateTime;
import java.util.List;

/**
 * <p>
 *  服务类
 * </p>
 *
 * @author lxp
 * @since 2024-07-17
 */
public interface ViolationsService extends IService<Violations> {
    void insertAll(Violations violations);

    List<Violations> getAllViolations(Violations violations);

    List<Integer> getTypeNumber();

    List<VioNumberDTO.CollegeData> getCollegeData();

    List<Integer> getTypeNumberByTimeRange(LocalDateTime startTime, LocalDateTime endTime);

    List<VioNumberDTO.CollegeData> getCollegeDataByTimeRange(LocalDateTime startTime, LocalDateTime endTime);

    void exportUser(HttpServletResponse response);

    List<Violations> getAllViolationsNot();

    void exportUser2(HttpServletResponse response);

    List<String> getMajor();

    List<String> getKind();

    List<String> getAcade();

    void importWhitelistSettings(MultipartFile file);
    void deleteViolation(String vioId);

    void extendViolation(String vioId, String publishmentDuration);

    List<String> getVioType();

    List<Integer> getVioNum();

}
